YES(O(1),O(n^1)) We are left with following problem, upon which TcT provides the certificate YES(O(1),O(n^1)). Strict Trs: { g(s(x)) -> f(x) , g(0()) -> 0() , f(s(x)) -> s(s(g(x))) , f(0()) -> s(0()) } Obligation: innermost runtime complexity Answer: YES(O(1),O(n^1)) We use the processor 'Small Polynomial Path Order (PS,1-bounded)' to orient following rules strictly. Trs: { g(s(x)) -> f(x) , g(0()) -> 0() , f(s(x)) -> s(s(g(x))) , f(0()) -> s(0()) } The induced complexity on above rules (modulo remaining rules) is YES(?,O(n^1)) . These rules are moved into the corresponding weak component(s). Sub-proof: ---------- The input was oriented with the instance of 'Small Polynomial Path Order (PS,1-bounded)' as induced by the safe mapping safe(g) = {}, safe(s) = {1}, safe(f) = {}, safe(0) = {} and precedence g ~ f . Following symbols are considered recursive: {g, f} The recursion depth is 1. For your convenience, here are the satisfied ordering constraints: g(s(; x);) > f(x;) g(0();) > 0() f(s(; x);) > s(; s(; g(x;))) f(0();) > s(; 0()) We return to the main proof. We are left with following problem, upon which TcT provides the certificate YES(O(1),O(1)). Weak Trs: { g(s(x)) -> f(x) , g(0()) -> 0() , f(s(x)) -> s(s(g(x))) , f(0()) -> s(0()) } Obligation: innermost runtime complexity Answer: YES(O(1),O(1)) Empty rules are trivially bounded Hurray, we answered YES(O(1),O(n^1))